package com.wnxy.config;

import lombok.Data;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Autowired
private SwaggerProperties sp;


    @Bean
    public Docket createDocket(){
        Docket docket = new Docket(DocumentationType.SWAGGER_2);
        ApiInfo apiInfo=new ApiInfoBuilder()
                .title(sp.getTitle())
                .description(sp.getDescription())
//                .termsOfServiceUrl()
                .contact(new Contact("shaobo","http://www.xxxx",""))
                .version(sp.getVersion()).build();

       return docket.apiInfo(apiInfo)
        .select()
         .apis(RequestHandlerSelectors.basePackage(sp.getBasePackage()))
         .paths(PathSelectors.any()).build();
    }
}
